package com.example.blog.modules.user.service;

import com.example.blog.modules.user.dto.RoleDTO;

import java.util.List;
import java.util.Set;

public interface RoleService {
    
    RoleDTO createRole(RoleDTO roleDTO);
    
    RoleDTO updateRole(Long id, RoleDTO roleDTO);
    
    void deleteRole(Long id);
    
    RoleDTO getRoleById(Long id);
    
    RoleDTO getRoleByName(String name);
    
    List<RoleDTO> getAllRoles();
    
    void assignRolesToUser(Long userId, Set<String> roleNames);
    
    void removeRolesFromUser(Long userId, Set<String> roleNames);
    
    Set<String> getUserRoles(Long userId);
    
    Set<String> getUserPermissions(Long userId);
} 